package practise01

/** *
  * unapply unapplySeq的常用套路
  *
  * 提取器，顾名思义就是提取内容，并且还是个方法，那我们就可以把自己的业务逻辑放进去提取内容
  *
  * 套路2:使用unapplySeq来提取个集合
  */

object unapplySeqOne {
  def unapplySeq(s: String): Option[Seq[String]] = {
    Some {
      s.split(",").map(_.hashCode.toString)
    }
  }
}

object unapplySeqOneTest {
  def main(args: Array[String]): Unit = {
    "a,b,c,d" match {
      case unapplySeqOne(a, b, _, _) => println(s"$a,$b")
      case _ => println("None")
    }

    "a_b_c_d" match {
      case unapplySeqOne(a, b, _, _) => println(s"$a,$b")
      case _ => println("None")
    }
  }
}


